from django.shortcuts import render
from apps.article.models import Article
from django.core.paginator import Paginator
from utils.PageUtils import get_middle_range


# Create your views here.
def index(request):
    # 查询所有的文章
    article_list = Article.objects.all().order_by('-id')  # 根据id倒序
    paginator = Paginator(article_list, 3)
    # 当前页码是多少页
    page_num = request.GET.get('p', 1)
    # 得到当前页
    page = paginator.page(page_num)
    # 得到当前页的页码
    middle_page = get_middle_range(list(paginator.page_range), int(page_num) - 1)
    # 添加到字典对象
    context = {
        "article_list": page.object_list,  # 文章列表
        "page": page,  # 分页对象
        "middle_page": middle_page,  # 中间页页码
        "current_page": int(page_num)  # 当前页
    }

    # 会去模板文件夹中找 index.html文件，进行渲染，然后返回给浏览器
    return render(request, 'index.html', context)
